iT邦幫忙

2022 iThome 鐵人賽

DAY 12
0
Modern Web

想轉職的鯊魚從零基礎開始學習JavaScript系列 第 12

想轉職的鯊魚從零基礎開始學習JavaScript Day-12 ECMAScript Language-概述(三)

  • 分享至 

  • xImage
  •  

Functions(函式)與Classes(類)

Functions(函式)跟Classes(類),感覺是兩個不同的東西,但是他們的Declarations(宣告)卻是相當相似的,先宣告他們的類別(function/class),之後才繼續敘述他們的名稱與內容,並可以在其他地方無限次的呼叫,或許是這個原因ECMA才把他們分在同類

Functions(函式)

名稱是Functions,是Object type的其中一種,但是概念從Subroutine這邊去理解,他是程式碼最小的操作與執行單位,大型的程式碼都是由眾多的小Functions所組合而成;而一個Function是由一個或是多個Statements組合而成,當Function被呼叫的時候,會將內部Statements依序執行。

補充:拆分即是把Functions簡化,可以方便閱讀,並可以大量重複運用

Classes(類)

這是ES6引入的的新概念,像是一個比較特別Functions函式,作為建立新物件的模板,並透過new +class的名稱透過建立好的class來建立新物件。

Modules(模組)

Modules(模組)的理念跟Classes(類)比較類似,讓程式碼模組化,可以讓程式碼在各種狀況下都能被使用,程式碼的拆分概念的延伸。
透過export將js檔案輸出給其他地方使用,
透過import將其他js檔案引入至需要他的地方使用。

Scripts(命令稿/指令搞)暨ECMAScript Language總結

經過前面我們知道,Source Text是我們編撰code使用的文字與符號,
Lexical Grammar是Source Text轉成Unicode編碼時使用的規範,以利計算機去解讀,
Statements、Declarations及Expressions,這三個是我們使用Source Text的文字所組成的句子
Functions、Classes及Modules,將程式碼製成模組,並透過呼叫重複使用,
那個Scripts(命令稿/指令搞)是什麼呢?
Scripts(命令稿/指令搞)即是我們撰寫出的程式碼整體,一個JS檔的全部內容即是一個Scripts(命令稿/指令搞),如果說我們寫的所有Statements是文字,那Scripts(命令稿/指令搞)就是一張稿紙,乘載了我們撰寫的所有內容,並交給計算機一步一步去執行。

結語

ECMAScript Language結束啦!經過這裡總覺得我好像理解JavaScript是怎麼運作的,但是也才是挑戰的開始,這邊只是概述,裡面的各種分類都還有相當龐大內容等著我們去挖掘,接下來跟鯊魚一起深入理解吧!

鯊語錄

參考資料

MDN-classes
wiki-Subroutine
EMCA262
JavaScript 命令稿
JavaScript大全-第七版


上一篇
想轉職的鯊魚從零基礎開始學習JavaScript Day-11 ECMAScript Language-概述(二) Statements(述句)與Declarations(宣告)
下一篇
想轉職的鯊魚從零基礎開始學習JavaScript Day-13 The String Type字串(一)
系列文
想轉職的鯊魚從零基礎開始學習JavaScript31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言